-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use the rust-version
field in Cargo.toml to set minimum Rust version
#506
Conversation
How does this relate to |
Seems like this needs #481. |
Ok yeah this applies on top of https://rust-lang.github.io/rustup/overrides.html This is confusing, because either rust-toolchain meets this requirement or nothing will build. But, since we also use stable for tests, this is useful for making sure the tests compile with a new enough rust. |
Why don't we use stable by default and nightly only for miri? |
I first introduced the check (#315) when only a subset of I think it's fine to flip that around, and use the MSRV by default (e.g. via |
@@ -8,6 +8,9 @@ license = "Apache-2.0 OR MIT" | |||
name = "libtock" | |||
repository = "https://www.github.com/tock/libtock-rs" | |||
version = "0.1.0" | |||
# Minimum required Rust compiler version for libtock-rs. | |||
# Aug 2023: Set to support `Result::is_ok_and()`. | |||
rust-version = "1.70" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be set workspace-wide and inherited.
... which requires a newer nightly toolchain, because the current toolchain is too old to support workspace inheritance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like someone should really be looking into updating the nightly toolchain, eh? 😆
I can attempt that tonight, if adding sptr
as an external dependency is uncontroversial enough. All of the other proposals in #481 (especially mine!) seem ... less than suboptimal.
@@ -8,6 +8,9 @@ license = "Apache-2.0 OR MIT" | |||
name = "libtock" | |||
repository = "https://www.github.com/tock/libtock-rs" | |||
version = "0.1.0" | |||
# Minimum required Rust compiler version for libtock-rs. | |||
# Aug 2023: Set to support `Result::is_ok_and()`. | |||
rust-version = "1.70" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to test with this MSRV in Makefile rather than using +stable
, otherwise this will bitrot.
Done in #513 |
This encodes the minimum version so that the tooling will verify the user has a new enough Rust.
Set based on the needs from #498.
Fixes #394. Supersedes #499.